#pragma once
#include <QtDBus/QDBusAbstractAdaptor>

class FlameshotDBusAdapter : public QDBusAbstractAdaptor
{
    Q_OBJECT
    Q_CLASSINFO("D-Bus Interface", "org.dharkael.kylinscreencap")

public:
    explicit FlameshotDBusAdapter(QObject *parent = nullptr);
    virtual ~FlameshotDBusAdapter();

signals:
    void captureTaken(uint id, QString completePath);
    void captureFailed(uint id);
    void captureExit(uint id);
public slots:
    Q_NOREPLY void graphicCapture(uint id);
    Q_NOREPLY void osManagerCapture(uint id);
    Q_NOREPLY void fullScreen(uint id);
    Q_NOREPLY void captureScreen(int number, uint id);

    Q_NOREPLY void openSetting();
    Q_NOREPLY void trayIconEnabled(bool enabled);

private slots:
//    void handleCaptureTaken(uint id, const QPixmap &p);
};
